|
Die Hardware-Entwicklung hat in den letzten Jahren eine Palette von
immer leistungsfähigeren Rechnern und Kommunikationssystemen
hervorgebracht. Aufgrund der Verbreitung, die Parallelrechner und
insbesondere lokale Netzwerke aus Arbeitsplatzrechnern dadurch
inzwischen erreicht haben, gibt es große Anstrengungen, die
Rechenkapazitäten, die diese parallelen Systeme in der Summe ihrer
Komponenten bieten, besser auszunutzen. Motivation dafür ist die
oft zu beobachtende ungleichmäßige Auslastung des Gesamtsystems,
die auftritt, wenn die Teilsysteme autonom sind und von den
Benutzern unterschiedlich stark belastet werden, oder wenn parallele
und verteilte Anwendungen - algorithmisch bedingt - ihre anfallende
Last ungleichmäßig verteilen. Dies kann soweit gehen, daß
einzelne Komponenten sehr stark belastet sind, andere überhaupt
nicht. Eine ungleichmäßige Auslastung verlängert unnötigerweise
die Ausführungszeit von Aufträgen auf den stärker belasteten
Teilsystemen und reduziert den Gesamtdurchsatz im System. An dieser
Stelle setzen die sogenannten Lastausgleichsverfahren an. Sie haben
die Aufgabe, ein Ungleichgewicht in der Auslastung paralleler
Systeme abzumildern, um kürzere Antwortzeiten bzw. höheren
Systemdurchsatz zu erreichen.
Am Institut für Parallele und Verteilte Höchstleistungsrechner
(IPVR) der Universität Stuttgart wird die Lastbalancierungsumgebung
HiCon entwickelt und eingesetzt. HiCon verwendet als Ablaufumgebung
vernetzte heterogene Workstations. Anwendungen, die unter HiCon
ablaufen, haben eine Client-Server-Struktur und sind teilweise sehr
datenintensiv. Client und Server einer Anwendungsklasse sind jeweils
eigene Prozesse. Parallelisierung wird dadurch erreicht, daß
mehrere Server-Prozesse gleichzeitig auf verschiedenen Work stations
ablaufen und Aufträge der Clients bearbeiten. Dies bedingt
Datenaustausch zwischen den einzelnen Servern. Kommunikation und
Datenaustausch und die Steuerung des Ablaufs erfolgen über ein
Laufzeitsystem, das durch zentrale Prozesse und
Bibliotheksfunktionen realisiert ist. Das Modell verwendet eine
zentrale Lastbalancierungsstrategie zur Informationsbeschaffung und
Entscheidungsfindung. Es können mehrere zentral balancierte Cluster
durch dezentrale Kooperation verknüpft werden.
In dieser Arbeit wird eine neue Struktur für das HiCon-System
entwickelt, die anstatt auf Prozessen auf Threads als
Haupt-Parallelisierungsmechanismus basiert. Dabei existiert pro
beteiligtem Rechnerknoten nur ein einziger Prozess, der je nach
Bedarf Threads zur Bearbeitung von anstehenden Aufträgen abspaltet.
Bisher vorhandene Verwaltungsprozesse werden als Threads innerhalb
des einen Prozesses realisiert. Die zentralisierte Struktur wird
zugunsten einer dezentralen Verwaltung aufgegeben. Der
Balancierungsalgorithmus wird an die neue Struktur angepaßt. Es hat
sich gezeigt, daß diese neue knotenbasierte Struktur die
Kommunikationskosten, Datenwartezeiten und andere Kostenfaktoren
verringern kann und somit eine Verbeserung der Antwortzeiten für
bestimmte Applikationen bewirkt. Es sind aber Schwächen gegenüber
einer zentralen Balancierungsstruktur bezüglich der Qualität der
zur Entscheidungsfindung notwendigen Informationen und der
verwendeten Heuristiken deutlich geworden.
|